<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <!--  
        1. function 函数
            主要目的:为了将多条代码进行捆绑封装,形成一个完整的功能
            优势:
            * 定义一个函数,可多次使用
            * 传入不同的参数,可产生不同的结果
        2. 函数分类
            内置函数:Js引擎内部已经封装好的函数,可直接使用.例如:Boolean(),String(),Nuumber()
            自定义函数: 根据用户的需求而出现的函数
        3 .内置函数
            参考地址: https://www.runoob.com/jsref/jsref-tutorial.html
            两种使用方式:
                普通函数:函数名()
                方法函数:对象.方法名() ==> 对象.函数名()
        4. 自定义函数(逻辑)
            function 函数名(参数1,参数2,...){
                代码块
            }
        5. 调用函数
            函数名()
            函数名(参数1,参数2,...)
        6. 返回值
            格式:return 内容
            作用1:在代码块中,通过return返回数据 到调用函数的地方
            作用2:立马结束当前的函数,提交前返回数据到调用函数的地方
            注意:
                函数没有return时,需要执行里面的所有代码块(没有提前结束).并返回undefined
    -->
    <script>
        // 参数不同,结果不同
        Boolean(1);// true
        Boolean(0);// false
    </script>
    <script>
        // 内置函数
        console.log(Number(true));
        console.log(isNaN(1));
        var x = 1.2345678;
        console.log(x.toFixed(2));
        console.log(x);//有的函数会改变变量本身,有的不会
    </script>
    <script>
        //自定义函数
        function demo1(){
            console.log('这是第一个自定义函数');
        }
        //调用函数
        demo1();
        // 自定义函数(带参数)
        function demo2(n1,n2){
            console.log(n1+n2);
        }
        demo2(1,2);
        // 此函数没有返回值,默认返回 undefined
        var x  = demo2(99,99);
        console.log(x);
        //返回值
        function demo3(money){
            return money*10;
        }
        var x = demo3(5);
        console.log(x);
        // 提前结束函数
        function demo4(){
            console.log('1');
            console.log('2');
            return 'stop'; //从return开始,就直接结束函数,并返回到调用函数的地方
            console.log('3');
        }
        var x = demo4();
        console.log(x);
    </script>
</body>
</html>